Traffic Performance Optimization Configuration


Traffic Performance Optimization Configuration
 
 
This chapter describes how to configure Traffic Performance Optimization in-line service.
The following topics are covered in this chapter:
 
Before You Begin
Before you can configure the TPO in-line service:
1.
2.
 
Configuring TPO
This section lists the high-level steps to configure the TPO in-line service.
1.
2.
3.
4.
5.
Save your configuration as described in the Verifying and Saving your Configuration chapter.
Important: Commands used in the configuration examples in this section provide base functionality to the extent that the most common or likely commands and/or keyword options are presented. In many cases, other optional commands and/or keyword options are available. Refer to the Command Line Interface Reference for complete information regarding all commands.
 
Creating and Configuring TPO Profiles
This section describes how to create and configure TPO profiles.
 
Creating TPO Profiles
To create a TPO profile use the following configuration:
configure
  active-charging service <ecs_service_name>
     tpo profile <tpo_profile_name> [ -noconfirm ]
     end
Notes:
 
Configuring TPO Profiles
To configure a TPO profile use the following configuration:
configure
  active-charging service <ecs_service_name>
     tpo profile <tpo_profile_name>
#configurations for HTTP optimizations:
        http ad-filter display { no-text | text-only <text_only_string> | text-with-click <text_with_click_string> }
        http params ad-filter display bgcolor <hex_color>
        http compression
        http params compression level <compression_level>
        http optimize-compressed-page
        http prevent-server-compression
        http params url-rewrite prefix <url_rewrite_prefix>
        http url-rewrite
#configurations for TCP optimizations:
        tcp bandwidth { <bandwidth_kbps> | dynamic }
        tcp buffer-size { downlink | uplink } <buffer_size_kb>
        tcp congestion-control { basic | vegas | westwood-plus }
        tcp fast-retransmit-dupacks { <duplicate_acks> | dynamic }
        tcp handoff-optimization
        tcp initial-window { <initial_window> | dynamic bdp-percent <bdp_percent> | rfc5681 }
        tcp mss <mss>
        tcp pacing
        tcp rto { retrans-backoff { 1.0 | 1.5 | 2.0 } | rttvar-scaling <scaling_factor> }
        end
Notes:
If you enable the URL Rewrite feature using the http url-rewrite command, make sure that a valid DNS client is configured in the destination context as described in the Configuring DNS Client for URL Rewrite Feature section.
If for the Advertisement Blocking feature you configure the http ad-filter display { no-text | text-only <text_only_string> | text-with-click <text_with_click_string> } command, make sure that in the TPO policy, the match-ad and ad-filter commands are configured.
The http prevent-server-compression command must only be configured if you want TPO to receive only uncompressed data from the Web server.
In 12.2 and later releases, the tcp fast-retransmit-dupacks dynamic command specifies to dynamically change the number of duplicate acknowledgements required for fast retransmission based on the number of in-flight packets, and controls the actions taken on D-SACK detection.
 
Configuring DNS Client for URL Rewrite Feature
To configure DNS client in ISP (destination) context for the HTTP URL Rewrite feature, use the following configuration:
configure
  context <context_name>
     interface <interface_name>
        ip address <ip_address/mask>
        exit
     ip domain-lookup
     ip name-servers <ip_address>
     dns-client <dns_client_name>
        bind address <ip_address>
        round-robin-answers
        end
 
Creating and Configuring TPO Ruledefs and Group-of-Ruledefs
This section describes how to create and configure TPO ruledefs and TPO group-of-ruledefs.
Creating and Configuring TPO Ruledefs
To create/configure a TPO ruledef use the following configuration:
configure
  active-charging service <ecs_service_name>
     ruledef <tpo_ruledef_name>
        rule-application tpo
        ...
        end
Creating and Configuring TPO Group-of-Ruledefs
To create/configure a TPO group-of-ruledefs use the following configuration:
configure
  active-charging service <ecs_service_name>
     group-of-ruledefs <tpo_group_of_ruledefs_name>
        group-of-ruledefs-application tpo
        ...
        end
Notes:
 
Creating and Configuring TPO Policies
This section describes how to create and configure a TPO policy.
 
Creating TPO Policies
To create a TPO policy use the following configuration:
configure
  active-charging service <ecs_service_name>
     tpo policy <tpo_policy_name> [ -noconfirm ]
     end
Notes:
 
Configuring TPO Policies
To configure a TPO policy use the following configuration:
configure
  active-charging service <ecs_service_name>
     tpo policy <tpo_policy_name>
        match-rule priority <rule_priority> { tpo-group-of-ruledefs <tpo_group_of_ruledefs_name> | tpo-ruledef <tpo_ruledef_name> } tpo { none | profile <tpo_profile_name> } [ description <description> ]
        match-rule no-ruledef-match tpo { none | profile <tpo_profile_name> }
        match-ad priority <rule_priority> tpo-ruledef <ecs_ruledef_name>
        ad-filter ad-click-identity <bypass_string>
        end
Note:
The match-ad and ad-filter commands must be configured if the Advertisement Filter feature is to be enabled.
If the match-ad command is configured, the ACS ruledef specified must be configured with relevant match conditions. For information on how to create and configure ACS ruledefs, refer to the Enhanced Charging Service Administration Guide.
 
Configuring TPO Profile in ECS Charging Action
This section describe how to configure a TPO profile within an ECS charging action to enable ECS charging-action based TPO processing.
To configure a TPO profile within an ECS charging action use the following configuration:
configure
  active-charging service <ecs_service_name>
     charging-action <charging_action_name>
        tpo profile <tpo_profile_name>
        end
 
Applying TPO Policies to Subscribers/APNs
This section describes how to associate TPO policies with subscribers/APNs.
 
Applying TPO Policies to Subscribers
To associate a TPO policy with subscriber(s) use the following configuration:
configure
  context <context_name>
     subscriber { default | name <subscriber_name> }
        tpo policy <tpo_policy_name>
        end
 
Applying TPO Policies to APNs
To associate a TPO policy with an APN use the following configuration:
configure
  context <context_name>
     apn name <apn_name>
        tpo policy <tpo_policy_name>
        end
 
Configuring Default TPO Policy for Subscribers
This section describes how to configure the default TPO policy for subscribers using a particular rulebase.
To configure the default TPO policy for subscribers in the rulebase use the following configuration:
configure
  active-charging service <ecs_service_name>
     rulebase <rulebase_name>
        tpo default-policy <tpo_policy_name>
        end
Notes:
TPO Administration and Other Configurations
This section describes TPO administrative and other procedures.
This section includes the following topics:
Changing TPO Policy in Mid Session
To change the TPO policy in mid session use the following command available in the Exec mode:
update active-charging switch-to-tpo-policy <tpo_policy_name> { all | callid <call_id> | imsi <imsi> | ip-address <ip_address> | msid <msid> | tpo-policy <tpo_policy_name> | username <user_name> } [ -noconfirm ] [ | { grep <grep_options> | more } ]
Notes:
The switch-to-tpo-policy tpo_policy_name option specifies the new TPO policy to apply, and the tpo-policy tpo_policy_name option specifies to apply the new policy to sessions using this TPO policy.
Disabling/Enabling TPO Optimizations for P2P Flows
To disable/continue TPO optimizations when a peer-to-peer (P2P) flow is detected use the following configuration:
configure
  active-charging service <ecs_service_name>
     tpo profile <tpo_profile_name>
        p2p-detected { cease-tpo | continue-tpo }
        end
Notes:
 
Dynamically Changing TPO Profile for TCP Flows based on RAT Type Change
To dynamically change TPO profile for TCP flows based on RAT type change of subscriber, use the following configuration:
configure
  active-charging service <ecs_service_name>
     ruledef <tpo_ruledef_name>
        bearer 3gpp rat-type = utran
        exit
     tpo profile <tpo_profile_name>
        tcp congestion-control { basic | vegas | westwood-plus }
        exit
     tpo policy <tpo_policy_name>
        match-rule priority <priority> tpo-ruledef <tpo_ruledef_name> tpo profile <tpo_profile_name>
        end
Notes:
The profile selection is based on ruledefs configured either as “bearer 3gpp rat-type = <*>” or as “bearer 3gpp rat-type != <*>”.
Whenever match-rule is triggered, when RAT type of the subscriber changes, and the new RAT type is UTRAN, the rule with priority <priority> will be hit and the TPO profile <tpo_profile_name> is applied to the flow.
 
Verifying Your Configuration
This section describes how to verify your TPO configurations.
To verify your configurations, use the following steps:
1.
show active-charging tpo profile statistics all
show active-charging tpo profile statistics name <tpo_profile_name>
2.
show active-charging tpo policy statistics all
show active-charging tpo policy statistics name <tpo_policy_name>
3.
show subscribers tpo { not-required | required }+
The output of this command displays access information, call ID, MSID, user name, IP address, and idle time information for the specified subscribers — those with TPO enabled and those without.
4.
show subscribers full
The output of this command indicates the TPO policy configured for the subscriber(s).
5.
show active-charging ruledef { charging | tpo }
6.
show active-charging ruledef statistics all { charging | tpo }
7.
show configuration errors
The output of this command displays TPO CLI configuration errors such as the following:
 
 

Cisco Systems Inc.
Tel: 408-526-4000
Fax: 408-527-0883